home *** CD-ROM | disk | FTP | other *** search
/ ETO Development Tools 1 / ETO Development Tools 1.iso / Tools - Objects / C++ / MPW C++ 3.1b1 / Examples / CPlusExamples / CPlusShapesApp.make < prev    next >
Text File  |  1989-09-29  |  4KB  |  132 lines

  1. #------------------------------------------------------------------------------
  2. #
  3. #    MultiFinder-Aware Simple Shapes Sample Application
  4. #
  5. #    CPlusShapesApp
  6. #
  7. #    This file: CPlusShapesApp.make    -    Make source
  8. #
  9. #    Copyright © 1988 Apple Computer, Inc.
  10. #    All rights reserved.
  11. #
  12. #    Versions:    1.0                 3/89
  13. #
  14. #    Components:
  15. #            CPlusShapesApp.make        March 1, 1989
  16. #            TApplicationCommon.h    March 1, 1989
  17. #            TApplication.h            March 1, 1989
  18. #            TDocument.h                March 1, 1989
  19. #            ShapesAppCommon.h        March 1, 1989
  20. #            ShapesApp.h                March 1, 1989
  21. #            ShapesDocument.h        March 1, 1989
  22. #            TApplication.cp            March 1, 1989
  23. #            TDocument.cp            March 1, 1989
  24. #            ShapesApp.cp            March 1, 1989
  25. #            ShapesDocument.cp        March 1, 1989
  26. #            TApplication.r            March 1, 1989
  27. #            ShapesApp.r                March 1, 1989
  28. #
  29. #   There are four main classes in this program. Each of
  30. #   these classes has a definition (.h) file and an
  31. #   implementation (.cp) file.  
  32. #   
  33. #   The TApplication class does all of the basic event
  34. #   handling and initialization necessary for Mac Toolbox
  35. #   applications. It maintains a list of TDocument objects,
  36. #   and passes events to the correct TDocument class when
  37. #   apropriate. 
  38. #   
  39. #   The TDocument class does all of the basic document
  40. #   handling work. TDocuments are objects that are
  41. #   associated with a window. Methods are provided to deal
  42. #   with update, activate, mouse-click, key down, and other
  43. #   events. Some additional classes which implement a
  44. #   linked list of TDocument objects are provided. 
  45. #   
  46. #   The TApplication and TDocument classes together define
  47. #   a basic framework for Mac applications, without having
  48. #   any specific knowledge about the type of data being
  49. #   displayed by the application's documents. They are a
  50. #   (very) crude implementation of the MacApp application
  51. #   model, without the sophisticated view heirarchies or
  52. #   any real error handling. 
  53. #   
  54. #   The TShapesApp class is a subclass of TApplication. It
  55. #   overrides several TApplication methods, including those
  56. #   for handling menu commands and cursor adjustment, and
  57. #   it does some necessary initialization.
  58. #   
  59. #   The TShapesDocument class is a subclass of TDocument. This
  60. #   class contains most of the special purpose code for
  61. #   shape drawing. In addition to overriding several of the
  62. #   TDocument methods, it defines a few additional
  63. #   methods which are used by the TShapesApp class to get
  64. #   information on the document state.  
  65. #
  66. #------------------------------------------------------------------------------
  67. # We need this rule since it is not built into MPW 3.0 Make
  68. .cp.o    ƒ    .cp
  69.     CPlus {depDir}{default}.cp -o {targDir}{default}.cp.o {CPlusOptions}
  70.  
  71. AppLibObjs =    ∂
  72.     TApplication.cp.o ∂
  73.     TDocument.cp.o
  74.  
  75. AppLibSrcs =    ∂
  76.     TApplication.cp ∂
  77.     TDocument.cp
  78.  
  79. AppLibHdrs =    ∂
  80.     TApplicationCommon.h ∂
  81.     TApplication.h ∂
  82.     TDocument.h
  83.  
  84. Objs =    ∂
  85.     Shapes.cp.o ∂
  86.     ShapesDocument.cp.o ∂
  87.     ShapesApp.cp.o ∂
  88.  
  89. Srcs =    ∂
  90.     Shapes.cp ∂
  91.     ShapesDocument.cp ∂
  92.     ShapesApp.cp
  93.  
  94. Hdrs =    ∂
  95.     Shapes.h ∂
  96.     ShapesDocument.h ∂
  97.     ShapesAppCommon.h ∂
  98.     ShapesApp.h
  99.  
  100. # turn on/off SADE symbols
  101. SymOpts = -sym off
  102.  
  103. # C++ options
  104. CPlusOptions = {SymOpts}
  105.  
  106. CPlusShapesApp ƒƒ {Objs} CPlusAppLib.o CPlusShapesApp.make
  107.     Link -d -o {Targ} {SymOpts} ∂
  108.         {Objs} ∂
  109.         CPlusAppLib.o ∂
  110.         "{CLibraries}"CPlusLib.o ∂
  111.         "{CLibraries}"CRuntime.o ∂
  112.         "{CLibraries}"StdCLib.o ∂
  113.         "{CLibraries}"CInterface.o ∂
  114.         "{Libraries}"Interface.o
  115.     SetFile {Targ} -t APPL -c 'MOOT' -a B
  116.  
  117. CPlusShapesApp ƒƒ ShapesApp.r ShapesAppCommon.h CPlusShapesApp.make
  118.     Rez -append -o {Targ} ShapesApp.r
  119.  
  120. CPlusShapesApp ƒƒ TApplication.r TApplicationCommon.h CPlusShapesApp.make
  121.     Rez -append -o {Targ} TApplication.r
  122.  
  123. # if ANY headers change, recompile everything
  124. {Objs} ƒƒ {Hdrs} {AppLibHdrs}
  125.  
  126. CPlusAppLib.o ƒƒ {AppLibObjs} CPlusShapesApp.make  
  127.     Lib -o {Targ} {SymOpts} {AppLibObjs}
  128.  
  129. # if AppLib headers change, recompile AppLib Objects
  130. {AppLibObjs} ƒƒ {AppLibHdrs}
  131.  
  132.